WOLF core
WOLF: A Modular Estimation Framework for Robotics
XXXXXXXXXXXXXXXXXXXXXXXXvoid(0)" frameborder="0" name="MSearchResults" id="MSearchResults">
wolf::ProcessorPose< DIM > Class Template Reference

#include <core/processor/processor_pose.h>

Inheritance diagram for wolf::ProcessorPose< DIM >:
[legend]

Public Member Functions

 ProcessorPose (const YAML::Node &_params)
 
 ~ProcessorPose () override=default
 
 WOLF_PROCESSOR_TEMPLATE_DIM_CREATE (ProcessorPose, DIM)
 
void configure (SensorBasePtr _sensor) override
 
void processCapture (CaptureBasePtr _cap) override
 process an incoming capture More...
 
void processKeyFrame (FrameBasePtr _frm) override
 process an incoming key-frame More...
 
bool triggerInCapture (CaptureBasePtr _cap) const override
 trigger in capture More...
 
bool triggerInKeyFrame (FrameBasePtr _frm) const override
 trigger in key-frame More...
 
bool storeKeyFrame (FrameBasePtr _frm) override
 store key frame More...
 
bool storeCapture (CaptureBasePtr _cap) override
 store capture More...
 
bool voteForKeyFrame () const override
 Vote for KeyFrame generation. More...
 
void createFactorIfNecessary ()
 
- Public Member Functions inherited from wolf::ProcessorBase
void startCaptureProfiling ()
 
void stopCaptureProfiling ()
 
void startKFProfiling ()
 
void stopKFProfiling ()
 
virtual void printProfiling (std::ostream &stream=std::cout) const
 
 ProcessorBase (const std::string &_type, const TypeComposite &_state_types, const YAML::Node &_params)
 constructor More...
 
 ~ProcessorBase () override
 
virtual void configure (SensorBasePtr _sensor)=0
 
virtual void remove ()
 
bool hasChildren () const override
 
const TypeComposite & getStateTypes () const
 
StateKeys getStateKeys () const
 
unsigned int id () const
 
void keyFrameCallback (FrameBasePtr _keyframe)
 notify a new keyframe made by another processor More...
 
void captureCallback (CaptureBasePtr _capture)
 notify a new capture More...
 
SensorBaseConstPtr getSensor () const
 
SensorBasePtr getSensor ()
 
YAML::Node getParams () const
 
bool isMotionProvider () const
 
bool applyLossFunction () const
 
bool isVotingActive () const
 
double getTimeTolerance () const
 
void setApplyLossFunction (bool _apply_loss_function)
 
void setVotingActive (bool _voting_active)
 
void setTimeTolerance (double _time_tolerance)
 
void setDebugVerboseLevel (const std::string &_debug_verbose_level)
 
std::string getDebugVerboseLevel () const
 
bool checkTimeTolerance (const TimeStamp &_ts1, const TimeStamp &_ts2) const
 
bool checkTimeTolerance (const CaptureBasePtr _cap, const TimeStamp &_ts) const
 
bool checkTimeTolerance (const FrameBasePtr _frm, const TimeStamp &_ts) const
 
bool checkTimeTolerance (const FrameBasePtr _frm, const CaptureBasePtr _cap) const
 
virtual void link (SensorBasePtr) final
 
virtual void printHeader (int depth, bool factored_by, bool metric, bool state_blocks, std::ostream &stream, std::string _tabs="") const
 
void print (int depth, bool factored_by, bool metric, bool state_blocks, std::ostream &stream=std::cout, std::string _tabs="") const
 
virtual CheckLog localCheck (bool _verbose, std::ostream &_stream, std::string _tabs="") const
 
bool check (CheckLog &_log, bool _verbose, std::ostream &_stream, std::string _tabs="") const
 
- Public Member Functions inherited from wolf::NodeBase
 NodeBase (const std::string &_category, const std::string &_type="Undefined", const std::string &_name="")
 
virtual ~NodeBase ()=default
 
unsigned int nodeId () const
 
std::string getCategory () const
 
std::string getType () const
 
std::string getName () const
 
bool isRemoving () const
 
virtual bool hasChildren () const =0
 
void setType (const std::string &_type)
 
void setName (const std::string &_name)
 
ProblemConstPtr getProblem () const
 
ProblemPtr getProblem ()
 

Additional Inherited Members

- Protected Member Functions inherited from wolf::ProcessorBase
virtual void processCapture (CaptureBasePtr)=0
 process an incoming capture More...
 
virtual void processKeyFrame (FrameBasePtr _keyframe_ptr)=0
 process an incoming key-frame More...
 
virtual bool triggerInCapture (CaptureBasePtr) const =0
 trigger in capture More...
 
virtual bool triggerInKeyFrame (FrameBasePtr) const =0
 trigger in key-frame More...
 
virtual bool storeKeyFrame (FrameBasePtr)=0
 store key frame More...
 
virtual bool storeCapture (CaptureBasePtr)=0
 store capture More...
 
virtual bool voteForKeyFrame () const =0
 Vote for KeyFrame generation. More...
 
virtual bool permittedKeyFrame () const final
 
void setProblem (ProblemPtr) override
 
void addTypes (const TypeComposite &)
 add state types More...
 
virtual void setProblem (ProblemPtr _prob_ptr)
 
- Protected Attributes inherited from wolf::ProcessorBase
unsigned int processor_id_
 
YAML::Node params_
 
BufferFrame buffer_frame_
 
BufferCapture buffer_capture_
 
std::string debug_verbose_level_
 
- Protected Attributes inherited from wolf::NodeBase
ProblemWPtr problem_ptr_
 
unsigned int node_id_
 Node id. It is unique over the whole Wolf Tree. More...
 
std::string node_category_
 Text label identifying the category of node ("SENSOR", "FEATURE", etc) More...
 
std::string node_type_
 Text label identifying the type or subcategory of node ("Pin Hole", "Point 2d", etc) More...
 
std::string node_name_
 
bool is_removing_
 A flag for safely removing nodes from the Wolf tree. See remove(). More...
 

Constructor & Destructor Documentation

◆ ProcessorPose()

template<unsigned int DIM>
wolf::ProcessorPose< DIM >::ProcessorPose ( const YAML::Node &  _params)
inline

◆ ~ProcessorPose()

template<unsigned int DIM>
wolf::ProcessorPose< DIM >::~ProcessorPose ( )
overridedefault

Member Function Documentation

◆ configure()

template<unsigned int DIM>
void wolf::ProcessorPose< DIM >::configure ( SensorBasePtr  _sensor)
overridevirtual

Implements wolf::ProcessorBase.

◆ createFactorIfNecessary()

template<unsigned int DIM>
void wolf::ProcessorPose< DIM >::createFactorIfNecessary

◆ processCapture()

template<unsigned int DIM>
void wolf::ProcessorPose< DIM >::processCapture ( CaptureBasePtr  )
inlineoverridevirtual

process an incoming capture

Each derived processor should implement this function. It will be called if:

Implements wolf::ProcessorBase.

◆ processKeyFrame()

template<unsigned int DIM>
void wolf::ProcessorPose< DIM >::processKeyFrame ( FrameBasePtr  _keyframe_ptr)
inlineoverridevirtual

process an incoming key-frame

Each derived processor should implement this function. It will be called if:

  • A new KF arrived and triggerInKF() returned true.

Implements wolf::ProcessorBase.

◆ storeCapture()

template<unsigned int DIM>
bool wolf::ProcessorPose< DIM >::storeCapture ( CaptureBasePtr  )
inlineoverridevirtual

store capture

Returns true if the capture should be stored

Implements wolf::ProcessorBase.

◆ storeKeyFrame()

template<unsigned int DIM>
bool wolf::ProcessorPose< DIM >::storeKeyFrame ( FrameBasePtr  )
inlineoverridevirtual

store key frame

Returns true if the key frame should be stored

Implements wolf::ProcessorBase.

◆ triggerInCapture()

template<unsigned int DIM>
bool wolf::ProcessorPose< DIM >::triggerInCapture ( CaptureBasePtr  ) const
inlineoverridevirtual

trigger in capture

Returns true if processCapture() should be called after the provided capture arrived.

Implements wolf::ProcessorBase.

◆ triggerInKeyFrame()

template<unsigned int DIM>
bool wolf::ProcessorPose< DIM >::triggerInKeyFrame ( FrameBasePtr  ) const
inlineoverridevirtual

trigger in key-frame

Returns true if processKeyFrame() should be called after the provided KF arrived.

Implements wolf::ProcessorBase.

◆ voteForKeyFrame()

template<unsigned int DIM>
bool wolf::ProcessorPose< DIM >::voteForKeyFrame ( ) const
inlineoverridevirtual

Vote for KeyFrame generation.

If a KeyFrame criterion is validated, this function returns true, meaning that it wants to create a KeyFrame at the last Capture.

WARNING! This function only votes! It does not create KeyFrames!

Implements wolf::ProcessorBase.

◆ WOLF_PROCESSOR_TEMPLATE_DIM_CREATE()

template<unsigned int DIM>
wolf::ProcessorPose< DIM >::WOLF_PROCESSOR_TEMPLATE_DIM_CREATE ( ProcessorPose< DIM >  ,
DIM   
)

The documentation for this class was generated from the following file: